<?php
/**
* @package Joostina
* @copyright Авторские права (C) 2008-2009 Joostina team. Все права защищены.
* @license Лицензия http://www.gnu.org/licenses/gpl-2.0.htm GNU/GPL, или help/license.php
* Joostina! - свободное программное обеспечение распространяемое по условиям лицензии GNU/GPL
* Для получения информации о используемых расширениях и замечаний об авторском праве, смотрите файл help/copyright.php.
*/

// запрет прямого доступа
defined('_VALID_MOS') or die();

require_once ($mainframe->getPath('front_html'));
require_once ($mainframe->getPath('class'));

$id		= intval(mosGetParam($_GET,'id',0));
$page	= intval(mosGetParam($_GET,'page',0));
$task	= strval(mosGetParam($_GET,'task','index'));

//$task = 'add';

switch($task) {

	case 'bug':
		bug($id);
		break;

	case 'add':
		add();
		break;

	case 'create':
		create();
		break;

	default:
		index($page);
		break;
}

function index($page=0){

	$page = ($page>0) ? $page : 1;

	$config = new bugTraq_config();
	$page_nav = ($page*$config->limit)-1;
	$page_nav = ($page_nav>0) ? $page_nav : 0;
	$sql_limit = ($page-1)*$config->limit;

	$bug_traq = new bugTraq();
	$bug_traqs = $bug_traq->load_all($sql_limit);
	$bug_total = $bug_traq->count();

	require_once('plugins/pageNavigation.php');
	$pageNav = new mosPageNav($bug_total, $page_nav, $config->limit);

	unset($bug_traq,$bug_total,$config);
	bugTraqHTML::index($bug_traqs,$pageNav);
}

function add(){
	$bug_traq = new bugTraq();
	bugTraqHTML::add($bug_traq);
}

function create(){
	global $my;

	josSpoofCheck();

	$bug_traq = new bugTraq();

	$bug_traq->user_id = $my->id;

	if(!$bug_traq->bind($_POST)) {
		echo "<script> alert('".$bug_traq->getError()."'); window.history.go(-1); </script>\n";
		exit();
	}

	if(!$bug_traq->check()) {
		echo "<script> alert('".$bug_traq->getError()."'); window.history.go(-1); </script>\n";
		exit();
	}

	if(!$bug_traq->store()) {
		echo "<script> alert('".$bug_traq->getError()."'); window.history.go(-1); </script>\n";
		exit();
	}

	bugTraqHTML::create($bug_traq);
}

/*
$bug_traq = new bugTraq();
for ($i=0;$i<200;$i++){
	$bug_traq->byg_title = md5(time().rand(5,0));
	$bug_traq->byg_description = md5(time().rand(5,0)).' '.md5(time().rand(5,0)).' '.md5(time().rand(5,0)).md5(time().rand(5,0)).' '.md5(time().rand(5,0)).md5(time().rand(5,0));
	$bug_traq->user_name = md5(time().rand(5,0));
	$bug_traq->store();
	unset($bug_traq->id);
}
*/
